Some digital cameras in the prior art, such as the Kodak Digital Science.TM. Professional DCS 420c Digital Camera, manufactured and sold by Eastman Kodak Company, capture and digitize images from a single charge coupled device (CCD) image sensor and store the resultant digital data as relatively "raw" (unprocessed) data in a non-volatile image memory, such as a PCMCIA-ATA type III removable hard drive. Such "raw" data will typically contain one color value per pixel since the image is captured through an array of color filters. These "raw" images are then transferred to a host computer, which in turn performs numerous image processing operations to render the images usable on an output device such as a monitor or printer. This process requires camera-specific image processing software to be available on the host computer in order to accomplish this image rendering. The image processing performed on the host computer typically includes steps such as interpolating the "raw" color filter array image data into full RGB records (i.e., full color information for each pixel), color matrixing to improve the color reproduction, and tone scale correction to improve the tone scale rendition of the image.
Other cameras described in the prior art, such as the cameras described in U.S. Pat. Nos. 5,477,264; 5,016,107; and 5,528,293, implement similar image processing inside the camera (rather than in a host computer), so that the images stored in the non-volatile memory contain "finished" image data (rather than "raw" data) in a standard file format, such as the JPEG interchange format described in ISO/IEC 10918-1:1994. ("Finished" is herein used to mean that the data has been processed for camera-specific parameters (such as color filter array pattern, color and tone scale anomalies, edge quality, compression, etc.) and then converted into a standardized file format.) This allows the image files to be viewed and utilized by any software package that supports the standard file format, without requiring any camera-specific software on a host computer. Unfortunately, providing "finished file" processing in the camera normally requires that the camera use expensive processing hardware, and/or relatively unsophisticated image processing algorithms, in order to minimize the processing time per picture.
If the processing time per picture is long, either the time the user must wait before taking the next picture will be equally long, or else an expensive, multi-image buffer memory must be provided, as described in the aforementioned U.S. Pat. Nos. 5,477,264 and 5,016,107, so that a new image can be taken while the previous image is being processed. What is needed is a digital camera architecture that enables the camera to provide "finished files" using sophisticated image processing algorithms, without requiring a multi-image buffer memory or expensive real-time image processing hardware, and without requiring the user to wait a long time for the image processing to be completed after each image is captured.